@JsonProperty এবং @JsonIgnore হলো Jackson লাইব্রেরির দুটি গুরুত্বপূর্ণ অ্যানোটেশন, যা Java-তে JSON ডেটার সাথে কাজ করার সময় ব্যবহৃত হয়। এগুলো মূলত JSON ডেটা সিরিয়ালাইজেশন (Serialization) এবং ডিসিরিয়ালাইজেশন (Deserialization) প্রক্রিয়াকে নিয়ন্ত্রণ করতে ব্যবহৃত হয়।
1. @JsonProperty
@JsonProperty ব্যবহার করা হয় একটি ফিল্ড বা মেথডের নাম পরিবর্তন করতে অথবা JSON ডেটাতে প্রদর্শনের জন্য কাস্টম নাম নির্ধারণ করতে।
উদাহরণ:
import com.fasterxml.jackson.annotation.JsonProperty;
public class User {
@JsonProperty("user_id") // JSON-এ "id" ফিল্ডের নাম হবে "user_id"
private int id;
@JsonProperty("user_name") // JSON-এ "name" ফিল্ডের নাম হবে "user_name"
private String name;
// Getters এবং Setters
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
ইনপুট JSON:
{
"user_id": 1,
"user_name": "John Doe"
}
আউটপুট JSON:
{
"user_id": 1,
"user_name": "John Doe"
}
2. @JsonIgnore
@JsonIgnore ব্যবহার করা হয় একটি ফিল্ডকে JSON ডেটার অংশ হতে বাধা দিতে। এটি JSON সিরিয়ালাইজেশন এবং ডিসিরিয়ালাইজেশন উভয় ক্ষেত্রেই প্রযোজ্য।
উদাহরণ:
import com.fasterxml.jackson.annotation.JsonIgnore;
public class User {
private int id;
@JsonIgnore // JSON ডেটাতে এই ফিল্ডটি অন্তর্ভুক্ত হবে না
private String password;
private String name;
// Getters এবং Setters
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
ইনপুট JSON:
{
"id": 1,
"name": "John Doe"
}
আউটপুট JSON:
{
"id": 1,
"name": "John Doe"
}
Note: এখানে
passwordফিল্ডটি JSON ডেটাতে অন্তর্ভুক্ত হবে না কারণ এটি@JsonIgnoreদ্বারা এনোটেট করা হয়েছে।
সংক্ষেপে:
@JsonProperty: ফিল্ড বা মেথডের নাম কাস্টমাইজ করতে ব্যবহৃত হয়।@JsonIgnore: একটি ফিল্ডকে JSON ডেটার বাইরে রাখতে ব্যবহৃত হয়।
এই দুটি অ্যানোটেশন ব্যবহার করে আপনার JSON ডেটার প্রক্রিয়াকরণ আরও সহজ এবং নিয়ন্ত্রণযোগ্য করা যায়।
Read more